
if (typeof window=='undefined') { // 针对node环境引入fetch
    var fetch = require('node-fetch')
}

var dataProvider = {
    nav: '',
    art: null,
    attachments: [],
    download_url: __API + '/x_cms_assemble_control/jaxrs/anonymous/fileinfo/download/document/',
}

function loadData (){
    var id = getQueryVariable("id")
    // 加载列表数据 =================
    var res_1 = fetch(__API + "/x_cms_assemble_control/jaxrs/anonymous/document/"+id+"/view", {
        "headers": {
            "content-type": "application/json"
        },
        //"body": "{\"categoryAliasList\":[\"" + alias + "\"]}",
        "method": "GET",
        "mode": "cors",
        "credentials": "omit"
    })
    .then(function(res){
        return res.json()
    })
    .then(function(json){
        console.log(json)
        if( json.type=='success' ) {
            dataProvider.art = json.data.data
            dataProvider.nav = json.data.data.$document.categoryAlias
        }
    })
    
    // 加载文档附件 =================
    var res_attach = fetch(__API + "/x_cms_assemble_control/jaxrs/anonymous/fileinfo/list/document/"+id, {
        "headers": {
            "content-type": "application/json"
        },
        "method": "GET",
        "mode": "cors",
        "credentials": "omit"
    })
    .then(function(res){
        return res.json()
    })
    .then(function(json){
        if( json.type=='success' ) {
            console.log('attachments', json)
            dataProvider.attachments = json.data
        }
    })
    
    
}

loadData()

if (typeof module !== 'undefined') { // 针对node环境导出数据（后端实际上是include本模块）
    module.exports = dataProvider;
}


// window.dataProvider = {}
// fetch("http://192.168.254.83:20020/x_cms_assemble_control/jaxrs/anonymous/document/filter/list/1/size/11", {
//   "headers": {
//     "content-type": "application/json"
//   },
//   "body": "{\"categoryAliasList\":[\"天安德环官网-项目公示\"]}",
//   "method": "PUT",
//   "mode": "cors",
//   "credentials": "omit"
// })
// .then(function(res){
//     return res.json()
// })
// .then(function(json){
//     console.log(json)
//     dataProvider.list = json
// })


// fetch方式，这种写法适合在浏览器端和node server端同时执行，目前可行，对低版本浏览器可以考虑用fetch的pollify
// fetch("http://127.0.0.1:20030/x_program_center/jaxrs/invoke/testApi/execute", {
//     "headers": {
//         "content-type": "application/json"
//     },
//     "body": "{\"a\":\"aa\"}",
//     "method": "POST",
//     "mode": "cors",
//     "credentials": "omit"
// })
// .then(function(response) {
//     return response.json();
// })
// .then(function(myJson) {
//     var str = JSON.stringify(myJson, null, 4)
//     $("#testDiv span").html(str)
// });

// $.ajax方式，这种方式对低版本浏览器有更好的兼容性，如果在服务端有找到$.ajax的node兼容版本，更值得考虑
// $.ajax({
//     type : 'POST',
//     dataType : 'json',
//     url : 'http://127.0.0.1:20030/x_program_center/jaxrs/invoke/testApi/execute',
//     headers : {'x-debugger' : true},
//     contentType : 'application/json',
//     xhrFields : {'withCredentials' : true},
//     crossDomain : true,
//     data : JSON.stringify({"a":"aa"}),
// }).always(function(resultJson) {
//     var str = JSON.stringify(resultJson, null, 4)
//     $("#testDiv span").html(str)
// });
